home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2000 #4 / Amiga Plus CD - 2000 - No. 4.iso / Vollversion / CamD / development / examples / capture / capture_tm.h < prev    next >
C/C++ Source or Header  |  2000-05-15  |  6KB  |  163 lines

  1.  
  2. /* Include file generated by Toolmaker V1.13 */
  3.  
  4. #include "capture_tm_text.h"    /* Toolmaker text header file */
  5.  
  6. /* TMScreenInfo structure */
  7.  
  8. struct TMScreenInfo
  9.   {
  10.   struct Screen *Screen;    /* pointer to Screen structure */
  11.   struct TagItem *MoreTags;    /* pointer to additional tag array */
  12.   struct VisualInfo *VisualInfo;    /* pointer to VisualInfo structure */
  13.   APTR UserData;
  14.   };
  15.  
  16. /* TMWindowInfo structure */
  17.  
  18. struct TMWindowInfo
  19.   {
  20.   struct Window *Window;    /* pointer to Window structure */
  21.   struct TagItem *MoreTags;    /* pointer to additional tag array */
  22.   struct IntuiMessage *GT_IMsg;    /* pointer to last gadtools IntuiMessage */
  23.   struct Menu *Menu;    /* pointer to Menu structure */
  24.   struct Requester Requester;    /* Requester structure for DISABLE/ENABLE */
  25.   UBYTE DisableCount;    /* Count for nested DISABLE/ENABLEs */
  26.   ULONG Flags;    /* TMWF_ flags */
  27.   struct Gadget *FirstGadget;    /* pointer to first gadget */
  28.   struct Gadget *ContextGadget;    /* pointer to context gadget */
  29.   APTR UserData;
  30.   };
  31.  
  32. /* TMGadgetInfo structure */
  33.  
  34. struct TMGadgetInfo
  35.   {
  36.   struct Gadget *Gadget;
  37.   struct TagItem *MoreTags;
  38.   APTR UserData;
  39.   };
  40.  
  41. /* TMData structure */
  42.  
  43. struct TMData
  44.   {
  45.   ULONG Size;    /* Size of TMData structure */
  46.   struct MsgPort *WindowMsgPort;    /* pointer to window message port */
  47.   LONG ReturnCode;    /* Return code for exit() */
  48.   struct FileRequester *FileRequester;    /* ASL file requester pointer */
  49.   struct FontRequester *FontRequester;    /* ASL font requester pointer */
  50.   struct TMScreenInfo TMScreenInfo[1];    /* TMScreenInfo structure array */
  51.   struct TMGadgetInfo TMGadgetInfo_CAPTUREM[5];    /* TMGadgetInfo structure array */
  52.   struct TMWindowInfo TMWindowInfo[1];    /* TMWindowInfo structure array */
  53.   APTR UserData;
  54.   };
  55.  
  56. /* Function Prototypes */
  57.  
  58. struct TMData *TM_Open(ULONG *);
  59. VOID TM_Close(struct TMData *);
  60. LONG TM_Request(struct Window *, UBYTE *, UBYTE *, UBYTE *, ULONG *, APTR, ...);
  61. VOID TM_EventLoop(struct TMData *);
  62. BOOL OpenScreen_Workbench(struct TMData *);
  63. VOID CloseScreen_Workbench(struct TMData *);
  64. BOOL OpenWindow_CAPTUREM(struct TMData *);
  65. VOID CloseWindow_CAPTUREM(struct TMData *);
  66. VOID DisableWindow_CAPTUREM(struct TMData *);
  67. VOID EnableWindow_CAPTUREM(struct TMData *);
  68. BOOL Window_CAPTUREM_MENUPICK(struct TMData *, struct IntuiMessage *);
  69. VOID Window_CAPTUREM_REFRESHWINDOW(struct TMData *, struct IntuiMessage *);
  70. BOOL Window_CAPTUREM_GADGETDOWN(struct TMData *, struct IntuiMessage *);
  71. BOOL Window_CAPTUREM_GADGETUP(struct TMData *, struct IntuiMessage *);
  72. BOOL Window_CAPTUREM_CLOSEWINDOW(struct TMData *, struct IntuiMessage *);
  73.  
  74. /* Library pointers */
  75.  
  76. extern struct Library *SysBase;
  77. extern struct Library *DOSBase;
  78. extern struct Library *IntuitionBase;
  79. extern struct Library *GadToolsBase;
  80. extern struct Library *UtilityBase;
  81. extern struct Library *AslBase;
  82.  
  83. /* Constants */
  84.  
  85. #define OPENFILE    0    /* For open file requester */
  86. #define SAVEFILE    1    /* For save file requester */
  87.  
  88. #define TMWF_OPENED    0x00000001    /* Window opened flag */
  89. #define TMWF_DISABLED    0x00000002    /* Window disabled flag */
  90.  
  91. #define TMERR_OK    0
  92. #define TMERR_MEMORY    1
  93. #define TMERR_MSGPORT    2
  94.  
  95. /* Screen pointer */
  96.  
  97. #define screen_Workbench    TMData->TMScreenInfo[0].Screen    /* Default public screen pointer */
  98.  
  99. /* Window, Menu, and Gadget pointers */
  100.  
  101. #define window_CAPTUREM    TMData->TMWindowInfo[0].Window    /* Window pointer */
  102. #define menu_CAPTUREM    TMData->TMWindowInfo[0].Menu    /* Menu pointer */
  103. #define gadget_CLEAR    TMData->TMGadgetInfo_CAPTUREM[0].Gadget    /* Gadget pointer */
  104. #define gadget_SEND    TMData->TMGadgetInfo_CAPTUREM[1].Gadget    /* Gadget pointer */
  105. #define gadget_SAVE    TMData->TMGadgetInfo_CAPTUREM[2].Gadget    /* Gadget pointer */
  106. #define gadget_LOAD    TMData->TMGadgetInfo_CAPTUREM[3].Gadget    /* Gadget pointer */
  107. #define gadget_BYTESINB    TMData->TMGadgetInfo_CAPTUREM[4].Gadget    /* Gadget pointer */
  108.  
  109. /* Gadget IDs */
  110.  
  111. #define ID_CLEAR    1    /* Gadget ID */
  112. #define ID_SEND    2    /* Gadget ID */
  113. #define ID_SAVE    3    /* Gadget ID */
  114. #define ID_LOAD    4    /* Gadget ID */
  115. #define ID_BYTESINB    5    /* Gadget ID */
  116.  
  117. /* Menu, item, and subitem IDs */
  118.  
  119. #define MENU_PROJECT    0    /* Menu number */
  120. #define ITEM_CLEAR    0    /* Item number */
  121. #define ITEM_LOAD    1    /* Item number */
  122. #define ITEM_SAVE    2    /* Item number */
  123. #define ITEM_ABOUT    4    /* Item number */
  124. #define ITEM_QUIT    6    /* Item number */
  125. #define MENU_SETTINGS    1    /* Menu number */
  126. #define ITEM_SETOUTPU    0    /* Item number */
  127. #define ITEM_SETINPUT    1    /* Item number */
  128.  
  129. /* ScreenInfo pointers */
  130.  
  131. #define ScreenInfo_Workbench    TMData->TMScreenInfo[0]    /* TMScreenInfo structure pointer */
  132.  
  133. /* WindowInfo pointers */
  134.  
  135. #define WindowInfo_CAPTUREM    TMData->TMWindowInfo[0]    /* TMWindowInfo structure pointer */
  136.  
  137. /* GadgetInfo pointers */
  138.  
  139. #define GadgetInfo_CLEAR    TMData->TMGadgetInfo_CAPTUREM[0]    /* TMGadgetInfo structure pointer */
  140. #define GadgetInfo_SEND    TMData->TMGadgetInfo_CAPTUREM[1]    /* TMGadgetInfo structure pointer */
  141. #define GadgetInfo_SAVE    TMData->TMGadgetInfo_CAPTUREM[2]    /* TMGadgetInfo structure pointer */
  142. #define GadgetInfo_LOAD    TMData->TMGadgetInfo_CAPTUREM[3]    /* TMGadgetInfo structure pointer */
  143. #define GadgetInfo_BYTESINB    TMData->TMGadgetInfo_CAPTUREM[4]    /* TMGadgetInfo structure pointer */
  144.  
  145. /* NewMenu UserData structures */
  146.  
  147. extern TMOBJECTDATA tmobjectdata_CLEAR;    /* CLEAR */
  148. extern TMOBJECTDATA tmobjectdata_LOAD;    /* LOAD */
  149. extern TMOBJECTDATA tmobjectdata_SAVE;    /* SAVE */
  150. extern TMOBJECTDATA tmobjectdata_ABOUT;    /* ABOUT */
  151. extern TMOBJECTDATA tmobjectdata_QUIT;    /* QUIT */
  152. extern TMOBJECTDATA tmobjectdata_SETOUTPU;    /* SETOUTPU */
  153. extern TMOBJECTDATA tmobjectdata_SETINPUT;    /* SETINPUT */
  154.  
  155. /* NewGadget UserData structures */
  156.  
  157. extern TMOBJECTDATA tmobjectdata_CLEAR;    /* CLEAR */
  158. extern TMOBJECTDATA tmobjectdata_SEND;    /* SEND */
  159. extern TMOBJECTDATA tmobjectdata_SAVE;    /* SAVE */
  160. extern TMOBJECTDATA tmobjectdata_LOAD;    /* LOAD */
  161. extern TMOBJECTDATA tmobjectdata_BYTESINB;    /* BYTESINB */
  162.  
  163.